﻿
@{
    Layout = null;
}




<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <title>自定义模块列表</title>
    <meta name="renderer" content="webkit">
    <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
    <meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=0">
    @*<link rel="stylesheet" href="~/Content/layuiadmin/layui/css/layui.css" media="all">*@
    <link href="https://cdn.staticfile.org/layui/2.7.6/css/layui.css" rel="stylesheet">
    <link rel="stylesheet" href="~/Content/layuiadmin/style/admin.css" media="all">
</head>
<body>

    <div class="layui-fluid">
        <div class="layui-row layui-col-space15">
            <div class="layui-col-md12">
                <div class="layui-card">
                    <div class="layui-tab layui-tab-brief" lay-filter="demo">
                        <ul class="layui-tab-title">
                            <li class="layui-this">自定义信息列表</li>
                            <li>自定义信息分类列表</li>
                        </ul>
                        <div class="layui-tab-content">
                            <div class="layui-tab-item layui-show">
                                <table class="layui-hide" id="demo" lay-filter="test"></table>

                                <script type="text/html" id="barDemo">
                                    <a class="layui-btn layui-btn-primary layui-btn-xs" lay-event="detail">查看</a>
                                    <a class="layui-btn layui-btn-xs" lay-event="more">更多 <i class="layui-icon layui-icon-down"></i></a>
                                </script>
                            </div>
                            <div class="layui-tab-item">
                                <table class="layui-hide" lay-filter="catetest" id="cate"></table>

                                <script type="text/html" id="catebarDemo">
                                    <a class="layui-btn layui-btn-primary layui-btn-xs" lay-event="catedetail">查看</a>
                                    <a class="layui-btn layui-btn-xs" lay-event="catemore">更多 <i class="layui-icon layui-icon-down"></i></a>
                                </script>
                            </div>
                        </div>
                    </div>
                </div>
            </div>
        </div>
    </div>
    <script src="~/Scripts/jquery-3.3.1.min.js"></script>
    @*<script src="~/Content/layuiadmin/layui/layui.js"></script>*@
    <script src="https://cdn.staticfile.org/layui/2.7.6/layui.js"></script>
    <script>
        layui.config({
            base: '/Content/layuiadmin/' //静态资源所在路径
        }).extend({
            index: 'lib/index' //主入口模块
        }).use(['index', 'set']);
    </script>
    <script src="~/Scripts/jquery-3.3.1.min.js"></script>
    <script src="~/Scripts/tools.js"></script>
    <script>
        $(function () {
            loadData();
        })
        // 得到需要的内置组件
        var layer = layui.layer; //弹层
        var table = layui.table; //表格
        var element = layui.element; //元素操作
        var dropdown = layui.dropdown; //下拉菜单
        function loadData() {
            layui.use(function () {
                loadDetail();

                element.on('tab(demo)', function (data) {
                    if (this.innerHTML == "自定义信息列表") {
                        loadDetail();
                    }
                    else {
                        loadType();
                    }
                });
            });
        }

        function loadDetail() {
            //封装table对象
            let options = {
                elem: '#demo'
                , height: 500
                , method: 'get'
                , url: apiurl + 'api/CustomDetails/GetAll' //数据接口
                , title: '自定义信息'//表格标题
                , page: { //开启分页
                    //上一页、页码、下一页、跳到指定页码、刷新、总记录数、显示记录数
                    layout: ['prev', 'page', 'next', 'skip', 'refresh', 'count', 'limit']
                    //, prev: '<em>←</em>'//自定义上一页样式
                    //, next: '<em>→</em>'//自定义下一页样式
                    , limits: [5, 10, 15, 'All']//自定义每页显示数量
                    , limit: 5 //默认每页显示数量
                }
                , toolbar: 'default' //开启工具栏，此处显示默认图标，可以自定义模板，详见文档
                , totalRow: false //开启合计行
                , cols: [
                    [ //表头
                        {
                            type: 'checkbox',
                            fixed: 'left'
                        }, {
                            field: 'CDetailsID',
                            title: 'ID',
                            width: 70,
                            sort: true,
                            fixed: 'left',
                            align: 'center'
                            //totalRow: '自定义模块ID：'
                        }, {
                            field: 'CDTitle',
                            title: '自定义模块名称',
                            align: 'center',
                            width: 200
                        }, {
                            field: 'CDDescribe',
                            title: '描述',
                            minWidth: 105
                        }, {
                            field: 'CTitleGrade',
                            title: '权重',
                            align: 'center',
                            sort: true,
                            width: 75
                        }, {
                            field: 'IsOnTrue',
                            title: '状态',
                            align: 'center',
                            width: 75,
                            sort: true,
                            templet: function (d) {
                                return d.IsOnTrue ? "<span class='layui-btn layui-btn-xs layui-btn-primary layui-border-green'>启用</span>" : "<span class='layui-btn layui-btn-xs layui-btn-primary layui-border-black'>禁用</span>";
                            }
                        }, {
                            field: 'CName',
                            title: '所属分类',
                            align: 'center',
                            sort: true,
                            width: 105
                        }, {
                            fixed: 'right',
                            title: '操作',
                            width: 150,
                            align: 'center',
                            toolbar: '#barDemo'
                        }
                    ]
                ],
                request: {
                    pageName: 'page' //页码的参数名称，默认：page
                    , limitName: 'size' //每页数据量的参数名，默认：limit
                },
                parseData: function (res) { //res 即为原始返回的数据
                    //console.log(res.Data)
                    return {
                        "code": res.Code, //解析接口状态
                        "msg": res.Msg, //解析提示文本
                        "count": Number(res.Msg), //解析数据长度
                        "data": res.Data //解析数据列表
                    };
                },
                response: {
                    statusName: 'code' //规定数据状态的字段名称，默认：code
                    , statusCode: 200 //规定成功的状态码，默认：0
                    , msgName: 'msg' //规定状态信息的字段名称，默认：msg
                    , countName: 'count' //规定数据总数的字段名称，默认：count
                    , dataName: 'data' //规定数据列表的字段名称，默认：data
                }
            }
            // 执行一个 table 实例
            table.render(options);

            // 头工具栏事件
            table.on('toolbar(test)', function (obj) {
                var checkStatus = table.checkStatus(obj.config.id),
                    data = checkStatus.data; //获取选中的数据

                switch (obj.event) {
                    case 'add':
                        layer.msg('添加');
                        break;
                    case 'update':
                        if (data.length === 0) {
                            layer.msg('请选择一行');
                        } else if (data.length > 1) {
                            layer.msg('只能同时编辑一个');
                        } else {
                            layer.alert('编辑 [id]：' + data[0].EDID);
                        }
                        break;
                    case 'delete':
                        if (data.length === 0) {
                            layer.msg('请选择一行');
                        }
                        else if (data.length > 1) {
                            layer.alert('删除 ' + data.length + "条数据");
                        }
                        else {
                            layer.msg('删除');
                        }
                        break;
                };
            });

            // 单元格工具事件
            table.on('tool(test)', function (obj) { //注：tool 是工具条事件名，test 是 table 原始容器的属性 lay-filter="对应的值"
                var data = obj.data //获得当前行数据
                    ,
                    layEvent = obj.event; //获得 lay-event 对应的值
                let id = data.CDetailsID;
                if (layEvent === 'detail') {
                    layer.msg('查看操作');
                } else if (layEvent === 'more') {
                    //下拉菜单
                    dropdown.render({
                        elem: this //触发事件的 DOM 对象
                        ,
                        show: true //外部事件触发即显示
                        ,
                        data: [{
                            title: '编辑',
                            id: 'edit'
                        }, {
                            title: '删除',
                            id: 'del'
                        }],
                        click: function (menudata) {

                            if (menudata.id === 'del') {
                                layer.confirm('确定删除吗？', { icon: 3 }, function (index) {
                                    layer.close(index);

                                    //向服务端发送删除指令
                                });
                            } else if (menudata.id === 'edit') {
                                console.log(data)
                                layer.msg('编辑操作，当前行 ID:' + id);
                            }
                        },
                        align: 'right' //右对齐弹出
                        ,
                        style: 'box-shadow: 1px 1px 10px rgb(0 0 0 / 12%);' //设置额外样式
                    })
                }
            });
        }
        function loadType() {
            //封装table对象
            let options = {
                elem: '#cate'
                , height: 500
                , method: 'get'
                , url: apiurl + 'api/CustomType/GetAll' //数据接口
                , title: '自定义信息'//表格标题
                , page: { //开启分页
                    //上一页、页码、下一页、跳到指定页码、刷新、总记录数、显示记录数
                    layout: ['prev', 'page', 'next', 'skip', 'refresh', 'count', 'limit']
                    //, prev: '<em>←</em>'//自定义上一页样式
                    //, next: '<em>→</em>'//自定义下一页样式
                    , limits: [5, 10, 15, 'All']//自定义每页显示数量
                    , limit: 5 //默认每页显示数量
                }
                , toolbar: 'default' //开启工具栏，此处显示默认图标，可以自定义模板，详见文档
                , totalRow: false //开启合计行
                , cols: [
                    [ //表头
                        {
                            type: 'checkbox',
                            fixed: 'left'
                        }, {
                            field: 'CTypeID',
                            title: 'ID',
                            width: 70,
                            sort: true,
                            fixed: 'left',
                            align: 'center'
                            //totalRow: '自定义模块ID：'
                        }, {
                            field: 'CName',
                            title: '自定义模块分类名称',
                            align: 'center',
                            minWidth: 140
                        }, {
                            field: 'CPower',
                            title: '权重',
                            align: 'center',
                            sort: true,
                            width: 90
                        }, {
                            field: 'IsShow',
                            title: '状态',
                            align: 'center',
                            width: 90,
                            sort: true,
                            templet: function (d) {
                                return d.IsShow ? "<span class='layui-btn layui-btn-xs layui-btn-primary layui-border-green'>启用</span>" : "<span class='layui-btn layui-btn-xs layui-btn-primary layui-border-black'>禁用</span>";
                            }
                        }, {
                            fixed: 'right',
                            title: '操作',
                            width: 150,
                            align: 'center',
                            toolbar: '#catebarDemo'
                        }
                    ]
                ],
                request: {
                    pageName: 'page' //页码的参数名称，默认：page
                    , limitName: 'size' //每页数据量的参数名，默认：limit
                },
                parseData: function (res) { //res 即为原始返回的数据
                    //console.log(res.Data)
                    return {
                        "code": res.Code, //解析接口状态
                        "msg": res.Msg, //解析提示文本
                        "count": Number(res.Msg), //解析数据长度
                        "data": res.Data //解析数据列表
                    };
                },
                response: {
                    statusName: 'code' //规定数据状态的字段名称，默认：code
                    , statusCode: 200 //规定成功的状态码，默认：0
                    , msgName: 'msg' //规定状态信息的字段名称，默认：msg
                    , countName: 'count' //规定数据总数的字段名称，默认：count
                    , dataName: 'data' //规定数据列表的字段名称，默认：data
                }
            }
            // 执行一个 table 实例
            table.render(options);

            // 头工具栏事件
            table.on('toolbar(catetest)', function (obj) {
                var checkStatus = table.checkStatus(obj.config.id),
                    data = checkStatus.data; //获取选中的数据

                switch (obj.event) {
                    case 'add':
                        layer.open({
                            type: 2,
                            title: '<h2><b>添加经历分类</b></h1>',
                            shadeClose: true,
                            shade: false,
                            maxmin: true, //开启最大化最小化按钮
                            area: ['600px', '600px'],
                            content: '/CustomManage/TypeAdd'
                        });
                        break;
                    case 'update':
                        if (data.length === 0) {
                            layer.msg('请选择一行');
                        } else if (data.length > 1) {
                            layer.msg('只能同时编辑一个');
                        } else {
                            layer.open({
                                type: 2,
                                title: '<h2><b>添加经历分类</b></h1>',
                                shadeClose: true,
                                shade: false,
                                maxmin: true, //开启最大化最小化按钮
                                area: ['600px', '600px'],
                                content: '/CustomManage/TypeEdit/' + data[0].CTypeID
                            });
                        }
                        break;
                    case 'delete':
                        if (data.length === 0) {
                            layer.msg('请选择一行');
                        }
                        else if (data.length > 1) {
                            layer.alert('删除 ' + data.length + "条数据");
                        }
                        else {
                            layer.msg('删除');
                        }
                        break;
                };
            });

            // 单元格工具事件
            table.on('tool(catetest)', function (obj) { //注：tool 是工具条事件名，test 是 table 原始容器的属性 lay-filter="对应的值"
                var data = obj.data //获得当前行数据
                    ,
                    layEvent = obj.event; //获得 lay-event 对应的值
                let id = data.CTypeID;
                if (layEvent === 'catedetail') {
                    layer.msg('查看操作');
                } else if (layEvent === 'catemore') {
                    //下拉菜单
                    dropdown.render({
                        elem: this //触发事件的 DOM 对象
                        ,
                        show: true //外部事件触发即显示
                        ,
                        data: [{
                            title: '编辑',
                            id: 'edit'
                        }, {
                            title: '删除',
                            id: 'del'
                        }],
                        click: function (menudata) {

                            if (menudata.id === 'del') {
                                layer.confirm('确定删除吗？', { icon: 3 }, function (index) {
                                    layer.close(index);

                                    //向服务端发送删除指令
                                });
                            } else if (menudata.id === 'edit') {
                                layer.open({
                                    type: 2,
                                    title: '<h2><b>添加经历分类</b></h1>',
                                    shadeClose: true,
                                    shade: false,
                                    maxmin: true, //开启最大化最小化按钮
                                    area: ['600px', '600px'],
                                    content: '/CustomManage/TypeEdit/' + id
                                });
                            }
                        },
                        align: 'right' //右对齐弹出
                        ,
                        style: 'box-shadow: 1px 1px 10px rgb(0 0 0 / 12%);' //设置额外样式
                    })
                }
            });
        }
    </script>
</body>
</html>

